import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;


class P10894_39643 {

	static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
	
	public static void main(String[] args) {
		
		while (true) {
			
			int n = Integer.parseInt(readLn());
			
			if (n == 0) break;
			
			process(n);
			
			System.out.println();
			System.out.println();
			
		}
		
	}
	
	private static void process(int n) {
		
		char[][] result;
//		SAVE HRIDOY
		if (n < 0) {
			n *= -1;
			result = new char[50*n+ 11*n][5 * n];
			
			for (int k = 0; k < result.length; k++) {
				for (int j = 0; j < result[k].length; j++) {
					result[k][j] = '.';
				}
			}
			
			putS(result, 0, 0, n);
			putA(result, 6 * n, 0, n);
			putV(result, 12 * n, 0, n);
			putE(result, 18 * n, 0, n);
			putH(result, 26 * n, 0, n);
			putR(result, 32 * n, 0, n);
			putI(result, 38 * n, 0, n);
			putD(result, 44 * n, 0, n);
			putO(result, 50 * n, 0, n);
			putY(result, 56 * n, 0, n);
		} else {
			result = new char[5 * n][50*n+ 11*n];
			
			for (int k = 0; k < result.length; k++) {
				for (int j = 0; j < result[k].length; j++) {
					result[k][j] = '.';
				}
			}
			
			putS(result, 0, 0,  n);
			putA(result, 0, 6 * n, n);
			putV(result, 0, 12 * n, n);
			putE(result, 0, 18 * n, n);
			putH(result, 0, 26 * n, n);
			putR(result, 0, 32 * n, n);
			putI(result, 0, 38 * n, n);
			putD(result, 0, 44 * n, n);
			putO(result, 0, 50 * n, n);
			putY(result, 0, 56 * n, n);
			
		}
		
		print(result);
		
	}

	private static void putY(char[][] result, int i, int j, int n) {
		
//		*...*
//		.*.*.
//		..*..
//		..*..
//		..*..
		
//		*...*

//		*....
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '*';
			}
		}
		
//		....*
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  4 * n; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
		i = i + n;


//		.*.*.

//		.*...
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  1 * n; b < (2 * n) + j; b++) {
				result[a][b] = '*';
			}
		}

		
		
//		...*.
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  3 * n; b < (4 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
		i = i + n;

		
//		..*..
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  2 * n; b < (3 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
		i = i + n;
		
//		..*..
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  2 * n; b < (3 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
		i = i + n;

//		..*..
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  2 * n; b < (3 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
		i = i + n;
		
	}

	private static void putO(char[][] result, int i, int j, int n) {
//		*****
//		*...*
//		*...*
//		*...*
//		*****

//		*****
		for (int a = i; a < n + i; a++) {
			for (int b = j; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}		
		
		i = i + n;


//		*...*

//		*....
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '*';
			}
		}
		
//		....*
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  4 * n; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
		i = i + n;

//		*...*

//		*....
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '*';
			}
		}
		
//		....*
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  4 * n; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
		i = i + n;

//		*...*

//		*....
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '*';
			}
		}
		
//		....*
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  4 * n; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
		i = i + n;

//		*****
		for (int a = i; a < n + i; a++) {
			for (int b = j; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}		
		
		
	}

	private static void putD(char[][] result, int i, int j, int n) {
		
//		***..
//		*..*.
//		*...*
//		*..*.
//		***..
		
//		***..
		for (int a = i; a < n + i; a++) {
			for (int b = j; b < (3 * n) + j; b++) {
				result[a][b] = '*';
			}
		}		
		
		
		i = i + n;


//		*..*.

//		*....
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '*';
			}
		}
		
//		...*.
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  3 * n; b < (4 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
		i = i + n;

//		*...*

//		*....
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '*';
			}
		}
		
//		....*
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  4 * n; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
		i = i + n;

//		*..*.

//		*....
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '*';
			}
		}
		
//		...*.
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  3 * n; b < (4 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
		i = i + n;

//		***..
		for (int a = i; a < n + i; a++) {
			for (int b = j; b < (3 * n) + j; b++) {
				result[a][b] = '*';
			}
		}		
		
		
		
	}

	private static void putI(char[][] result, int i, int j, int n) {
//		*****
//		..*..
//		..*..
//		..*..
//		*****

//		*****
		for (int a = i; a < n + i; a++) {
			for (int b = j; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}		
		
		i = i + n;

//		..*..
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  2 * n; b < (3 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
		i = i + n;
		
//		..*..
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  2 * n; b < (3 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
		i = i + n;

//		..*..
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  2 * n; b < (3 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
		i = i + n;
		
//		*****
		for (int a = i; a < n + i; a++) {
			for (int b = j; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}		
		
		
	}

	private static void putR(char[][] result, int i, int j, int n) {
//		*****
//		*...*
//		*****
//		*.*..
//		*..**

//		*****
		for (int a = i; a < n + i; a++) {
			for (int b = j; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}		
		
		i = i + n;

//		*...*

//		*....
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '*';
			}
		}
		
//		....*
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  4 * n; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
		i = i + n;

//		*****
		for (int a = i; a < n + i; a++) {
			for (int b = j; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}		
		
		i = i + n;

//		*.*..

//		*....
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '*';
			}
		}
		
//		..*..
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  2 * n; b < (3 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
		i = i + n;

//		*..**

//		*....
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '*';
			}
		}
		
//		...**
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  3 * n; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		

		
		
	}

	private static void putH(char[][] result, int i, int j, int n) {
		
//		*...*
//		*...*
//		*****
//		*...*
//		*...*
		
//		*...*

//		*....
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '*';
			}
		}
		
//		....*
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  4 * n; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
		i = i + n;
		
//		*...*

//		*....
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '*';
			}
		}
		
//		....*
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  4 * n; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}

		i = i + n;

//		*****
		for (int a = i; a < n + i; a++) {
			for (int b = j; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}		
		
		i = i + n;

//		*...*

//		*....
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '*';
			}
		}
		
//		....*
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  4 * n; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
		i = i + n;
		
//		*...*

//		*....
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '*';
			}
		}
		
//		....*
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  4 * n; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}

		i = i + n;
		
		
	}

//	*****
//	*....
//	***..
//	*....
//	*****
	private static void putE(char[][] result, int i, int j, int n) {
//		*****
		for (int a = i; a < n + i; a++) {
			for (int b = j; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}		
		
		i = i + n;
		
//		*....
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '*';
			}
		}

		i = i + n;

//		***..
		for (int a = i; a < n + i; a++) {
			for (int b = j; b < (3 * n) + j; b++) {
				result[a][b] = '*';
			}
		}		
		
		
		i = i + n;
		
//		*....
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '*';
			}
		}
		i = i + n;
		
//		*****
		for (int a = i; a < n + i; a++) {
			for (int b = j; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}		

		
	}

//	*...*
//	*...*
//	*...*
//	.*.*.
//	..*..

	
	private static void putV(char[][] result, int i, int j, int n) {
//		*...*

//		*....
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '*';
			}
		}
		
//		....*
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  4 * n; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
		i = i + n;
		
//		*...*

//		*....
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '*';
			}
		}
		
//		....*
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  4 * n; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}

		i = i + n;
		
//		*...*

//		*....
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '*';
			}
		}
		
//		....*
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  4 * n; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}

		i = i + n;
		
//		.*.*.

//		.*...
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j + 1 * n; b < 2 * n + j; b++) {
				result[a][b] = '*';
			}
		}
		
//		...*.
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  3 * n; b < (4 * n) + j; b++) {
				result[a][b] = '*';
			}
		}

		i = i + n;
		
//		..*..

		for (int a = i; a <  n + i; a++) {
			for (int b = j +  2 * n; b < (3 * n) + j; b++) {
				result[a][b] = '*';
			}
		}

		
	}

//	.***.
//	*...*
//	*****
//	*...*
//	*...*

	private static void putA(char[][] result, int i, int j, int n) {
		
//		.***.
		
//		*****
		for (int a = i; a < n + i; a++) {
			for (int b = j; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
//		*....
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '.';
			}
		}
		
//		....*
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  4 * n; b < (5 * n) + j; b++) {
				result[a][b] = '.';
			}
		}
		
		i = i + n;
		
//		*...*

//		*....
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '*';
			}
		}
		
//		....*
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  4 * n; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}

		i = i + n;
		
//		*****
		for (int a = i; a < n + i; a++) {
			for (int b = j; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}

		i = i + n;
		
//		*...*

//		*....
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '*';
			}
		}
		
//		....*
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  4 * n; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
		i = i + n;
		
//		*...*

//		*....
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '*';
			}
		}
		
//		....*
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  4 * n; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
	}

	private static void print(char[][] result) {
		StringBuilder sb = new StringBuilder();
		
		for (int k = 0; k < result.length; k++) {
			for (int j = 0; j < result[k].length; j++) {
				sb.append(result[k][j]);
			}
			sb.append("\n");
		}
		
		System.out.println(sb.toString().trim());
	}

	private static void putS(char[][] result, int i, int j, int n) {

//		*****
//		*....
//		*****
//		....*
//		*****

		
//		*****
		for (int a = i; a < n + i; a++) {
			for (int b = j; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}

//		*....
		
		i = i + n;

		for (int a = i; a <  n + i; a++) {
			for (int b = j; b < n + j; b++) {
				result[a][b] = '*';
			}
		}

//		*****
		
		i = i + n;
		
		for (int a = i; a < n + i; a++) {
			for (int b = j; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
//		....*
		
		i = i + n;
		
		for (int a = i; a <  n + i; a++) {
			for (int b = j +  4 * n; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}

//		*****
		i = i + n;
		
		for (int a = i; a < n + i; a++) {
			for (int b = j; b < (5 * n) + j; b++) {
				result[a][b] = '*';
			}
		}
		
		
	}

	static String readLn() {
        try {
			return br.readLine();
		} catch (IOException e) {
			throw new RuntimeException(e);
		}
    }

	
}
